From 53480ac7c710ec1c276213e85b859943e17704a1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Gabriel=20F=C3=A9ron?= Date: Tue, 29 May 2018 11:05:34 +0200 Subject: [PATCH] Add more instructions to error message --- src/cargo/ops/cargo_package.rs | 5 +++-- tests/testsuite/package.rs | 12 +++++++++++- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/src/cargo/ops/cargo_package.rs b/src/cargo/ops/cargo_package.rs index 84115a6da..2b55b19d1 100644 --- a/src/cargo/ops/cargo_package.rs +++ b/src/cargo/ops/cargo_package.rs @@ -360,8 +360,9 @@ fn run_verify(ws: &Workspace, tar: &FileLock, opts: &PackageOpts) -> CargoResult bail!( "Source directory was modified by build.rs during cargo publish. \ Build scripts should not modify anything outside of OUT_DIR. \ - Modified file: {}", - path.display() + Modified file: {}\n\n\ + To proceed despite this, pass the `--no-verify` flag.", + path.display() ) } diff --git a/tests/testsuite/package.rs b/tests/testsuite/package.rs index beb650c72..fde31b76c 100644 --- a/tests/testsuite/package.rs +++ b/tests/testsuite/package.rs @@ -1442,7 +1442,17 @@ fn do_not_package_if_src_was_modified() { assert_that( p.cargo("package"), - execs().with_status(101), + execs().with_status(101) + .with_stderr_contains( + "\ +error: failed to verify package tarball + +Caused by: + Source directory was modified by build.rs during cargo publish. \ +Build scripts should not modify anything outside of OUT_DIR. Modified file: [..]src/generated.txt + +To proceed despite this, pass the `--no-verify` flag.", + ), ); assert_that( -- 2.30.2